package com.googlecode.cannedbeans.generator.util;

import com.googlecode.cannedbeans.generator.core.exceptions.UnsupportedClassException;
import com.googlecode.cannedbeans.generator.model.Clazz;

/**
 *
 * @author Kim
 */
public interface ClazzBuilder {
    /**
     * Builds a {@Link Clazz} instance based on a given class.
     * @param bean the class from which the Clazz instance should be constructed.
     * @return the Clazz instance
     * @throws com.googlecode.cannedbeans.generator.core.exceptions.UnsupportedClassException when the given class contains fields of unsupported types.
     */
    Clazz build(Class bean) throws UnsupportedClassException;
}
